# @Timer:2022/3/25
# @作者:meng
# @文件名:内置库sys.py

'''sys：是python自带的内置模块，是与python解释器交互的桥梁'''
'''sys使用'''

#导入sys模块
import sys

#查看sys帮助文档
# help(sys)

#查看sys属性和方法
# print(dir(sys))

'''sys模块常用属性'''
#返回python解释器版本
# print(sys.version)

#返回操作系统平台版本,windows:win32,linux:linux,mac os :darwin
# print(sys.platform)

#返回外部向程序传递的参数
# print(sys.argv)
#在终端中命令，
# python ./内置库sys.py -a -b -c

#返回已导入的模块信息
# print(sys.modules)
# print(sys.modules['sys'])
# print(sys.modules.keys())
# print(sys.modules.values())
# import selenium
# print(sys.modules)
#返回导包的搜索路径
# print(sys.path)

#试验：1、当在当前目录下新建hello模块，并定义fuc_demo方法
#2、通过from hello import fuc_hello导入方法，并调用方法fuc_demo，能够成功调用
#3、当在父目录下新建testdir目录，然后把hello模块移到testdir目录后，当前的语句from hello import fuc_hello自动变为from testdir.hello import fuc_hello
#4、此时执行fuc_hello也可以成功
#5、把from testdir.hello import fuc_hello改为from hello import fuc_hello后，方法执行失败
#6、原因是sys.path导包路径中不包含E:\\python\\python_xx\\testdir
#7、通过append方法，把E:\\python\\python_xx\\testdir加到sys.path中，语句：sys.path.append('E:\\python\\python_xx\\testdir')
#8、执行sys.path,发现导包路径已经添加，然后再执行fuc_hello()，方法成功
'''通过append方法添加的路径，不是永久的，是临时的'''
# sys.path.append('E:\\python\\python_xx\\testdir')
# print(sys.path)
# from hello import fuc_hello
# fuc_hello()

'''sys常用方法'''
#获取当前编码方式
print(sys.getdefaultencoding())

#退出
sys.exit()

